package com.hongxun.project.assets.kCj.service;

import java.util.List;
import java.util.UUID;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.hongxun.project.assets.kCj.mapper.KCjMapper;
import com.hongxun.project.assets.kCj.domain.KCj;
import com.hongxun.project.assets.kCj.service.IKCjService;
import com.hongxun.common.utils.text.Convert;

/**
 * 采集扩展 服务层实现
 * 
 * @author hongxun
 * @date 2019-06-25
 */
@Service
public class KCjServiceImpl implements IKCjService 
{
	@Autowired
	private KCjMapper kCjMapper;

	/**
     * 查询采集扩展信息
     * 
     * @param id 采集扩展ID
     * @return 采集扩展信息
     */
    @Override
	public KCj selectKCjById(String id)
	{
	    return kCjMapper.selectKCjById(id);
	}
	
	/**
     * 查询采集扩展列表
     * 
     * @param kCj 采集扩展信息
     * @return 采集扩展集合
     */
	@Override
	public List<KCj> selectKCjList(KCj kCj)
	{
	    return kCjMapper.selectKCjList(kCj);
	}
	
    /**
     * 新增采集扩展
     * 
     * @param kCj 采集扩展信息
     * @return 结果
     */
	@Override
	public int insertKCj(KCj kCj)
	{
		kCj.setId(UUID.randomUUID().toString());
	    return kCjMapper.insertKCj(kCj);
	}
	
	/**
     * 修改采集扩展
     * 
     * @param kCj 采集扩展信息
     * @return 结果
     */
	@Override
	public int updateKCj(KCj kCj)
	{
	    return kCjMapper.updateKCj(kCj);
	}

	/**
     * 删除采集扩展对象
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
	@Override
	public int deleteKCjByIds(String ids)
	{
		return kCjMapper.deleteKCjByIds(Convert.toStrArray(ids));
	}

	@Override
	public void insertOrReplaceOrDelete(List<KCj> entities) {
		for (KCj k : entities) {
			if (k.getDatastate().equals("删除")) {
				kCjMapper.deleteKCjById(k.getId());
			} else {
				KCj kBj = kCjMapper.selectKCjById(k.getId());
				if (kBj == null) kCjMapper.insertKCj(k);
				else kCjMapper.updateKCj(k);
			}
		}
	}
	
}
